SysManager.Properties.Form = function() {

	var propertiesForm = new Ext.FormPanel({
				labelSeparator : ':',
				frame : true,
				border : false,
				autoDestroy : true,
				items : [{
							xtype : 'textfield',
							width : 200,
							name : 'propertyName',
							fieldLabel : '参数类型',
							readOnly : true
						}, {
							xtype : 'textfield',
							width : 200,
							allowBlank : false,
							blankText : '名称不能为空',
							name : 'name',
							fieldLabel : '名称'
						}, {
							xtype : 'textfield',
							width : 200,
							allowBlank : false,
							blankText : '代码不能为空',
							name : 'businessCode',
							fieldLabel : '代码'
						}, {
							xtype : 'textfield',
							width : 200,
							name : 'level',
							fieldLabel : '层次'
						}, {
							xtype : 'textfield',
							width : 200,
							name : 'type',
							fieldLabel : '所属类型'
						}, {
							xtype : 'textfield',
							width : 200,
							name : 'order',
							fieldLabel : '显示顺序'
						}, {
							xtype : 'textfield',
							width : 200,
							name : 'status',
							fieldLabel : '状态'
						}, {
							xtype : 'textfield',
							width : 200,
							name : 'isedit',
							fieldLabel : '是否能够编辑'
						}, {
							xtype : 'hidden',
							name : 'id'
						}, {
							xtype : 'hidden',
							name : 'propertyId',
							value : null
						}, {
							xtype : 'hidden',
							name : 'propertyCode'
						}, {
							xtype : 'hidden',
							name : 'englishName'
						}, {
							xtype : 'hidden',
							name : 'parentId',
							value : null
						}],
				buttons : [{
							text : '关闭',
							handler : function() {
								// propertiesForm.destroy();
								propertiesFormWin.hide();
							}
						}, {
							text : '提交',
							handler : submitPropertiesForm
						}]
			});

	var propertiesFormWin = new Ext.Window({
				layout : 'fit',
				width : 380,
				height : 400,
				closeAction : 'hide',
				resizable : false,// true可以拖动大小.
				shadow : true,// 投影效果.
				modal : true,// 对后面内容进行遮盖.
				closable : true,
				bodyStyle : 'padding:5 5 5 5',
				animCollapse : true,//关闭面板是的动画效果.
				items : [propertiesForm]
			});
			
			
	function submitPropertiesForm(){
		if(propertiesForm.isAdd){
			//添加.
			propertiesForm.getForm().submit({
				clientValidation:true,
	    		waitMsg:'正在添加信息',
	    		waitTitle:'提示',
	    		url:'properties.action?method=add',
	    		method:'POST',
	    		success:function(form,action){
	    			propertiesFormWin.hide();
	    			SysManager.Properties.gridReload();
	    			Ext.Msg.alert('提示','添加成功');
	    		},
	    		failure:function(form,action){
	    			Ext.Msg.alert('提示','添加失败,该业务代码可能已经被使用!');
	    		}
			});
		}else{
			//更新.
			propertiesForm.getForm().submit({
				clientValidation:true,
	    		waitMsg:'正在添加信息',
	    		waitTitle:'提示',
	    		url:'properties.action?method=modify',
	    		method:'POST',
	    		success:function(form,action){
	    			propertiesFormWin.hide();
	    			SysManager.Properties.gridReload();
	    			Ext.Msg.alert('提示','更新成功');
	    		},
	    		failure:function(form,action){
	    			Ext.Msg.alert('提示','更新失败');
	    		}
			});
		}
	};
	
	function loadPropertiesForm(propertiesId){
		propertiesForm.form.load(
			{
				waitMsg : '正在加载数据',
				waitTitle : '提示',
				url : 'properties.action',
				params : {method:'loadById',id:propertiesId},
				method : 'GET',
				success : function(form,action){
					//数据加载成功.	
				},
				failure : function(form,action){
					Ext.Msg.alert('无法加载该数据');
				}
			}
		);
		SysManager.Properties.initPropertiesForm(propertiesForm);
	};
	
	
	return {
		
		/**
		 * 打开维护页面
		 * @param id 如果id!=null进行添加.否则修改.
		 */
		showForm : function(id){
			propertiesForm.form.reset();
			if(id){
				propertiesForm.isAdd = false;
				loadPropertiesForm(id);
				propertiesFormWin.setTitle('修改参数信息');
			}else{
				propertiesForm.isAdd = true;
				if(!SysManager.Properties.initPropertiesForm(propertiesForm)){
					Ext.Msg.alert('提示','请先选择参数类型.');
					return;
				}
				propertiesFormWin.setTitle('添加参数');
			}
			propertiesFormWin.show();
		}
		
	};

}();